.spectrum-Accordion {
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
}

[dir="ltr"] .spectrum-Accordion-itemIndicator {
  left: var(--spectrum-accordion-icon-spacing, 16px);
}

[dir="rtl"] .spectrum-Accordion-itemIndicator {
  right: var(--spectrum-accordion-icon-spacing, 16px);
}

[dir="rtl"] .spectrum-Accordion-itemIndicator { transform: matrix(-1, 0, 0, 1, 0, 0) ; }

.spectrum-Accordion-itemIndicator {
  display: block;

  position: absolute;
  top: calc((var(--spectrum-accordion-item-height, 40px) - var(--spectrum-accordion-item-border-size, var(--spectrum-alias-border-size-thin))) / 2 - 5px);

  transition: transform ease var(--spectrum-global-animation-duration-100, 130ms);
}

.spectrum-Accordion-item {
  z-index: inherit;
  position: relative;

  display: list-item;
  margin: 0;

  border-bottom: var(--spectrum-accordion-item-border-size, var(--spectrum-alias-border-size-thin)) solid transparent;
}

.spectrum-Accordion-item:first-of-type {
    border-top: var(--spectrum-accordion-item-border-size, var(--spectrum-alias-border-size-thin)) solid transparent;
  }

.spectrum-Accordion-itemHeading {
  margin: 0;
}

[dir="ltr"] .spectrum-Accordion-itemHeader {
  padding-left: calc(var(--spectrum-accordion-item-padding, 16px) * 2 + 2px);
  padding-right: var(--spectrum-accordion-item-padding, 16px);
}

[dir="rtl"] .spectrum-Accordion-itemHeader {
  padding-right: calc(var(--spectrum-accordion-item-padding, 16px) * 2 + 2px);
  padding-left: var(--spectrum-accordion-item-padding, 16px);
}

[dir="ltr"] .spectrum-Accordion-itemHeader {
  text-align: left;
}

[dir="rtl"] .spectrum-Accordion-itemHeader {
  text-align: right;
}

.spectrum-Accordion-itemHeader {
  position: relative;

  display: -ms-flexbox;

  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;

  box-sizing: border-box;
  padding-top: var(--spectrum-global-dimension-size-150);
  padding-bottom: var(--spectrum-global-dimension-size-150);
  margin: 0;

  min-height: calc(var(--spectrum-accordion-item-height, 40px) - var(--spectrum-accordion-item-border-size, var(--spectrum-alias-border-size-thin)));

  font-size: var(--spectrum-accordion-item-title-text-size, var(--spectrum-global-dimension-font-size-50));
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: calc(var(--spectrum-accordion-item-title-tracking, var(--spectrum-global-font-letter-spacing-medium)) / 100);

  text-overflow: ellipsis;
  cursor: pointer;
  font-weight: 500;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: inherit;
  border: 0;
  font-family: inherit;
  width: 100%;
}

.spectrum-Accordion-itemHeader:focus {
    outline: none;
  }

[dir="ltr"] .spectrum-Accordion-itemHeader:focus::after {
      left: 0;
}

[dir="rtl"] .spectrum-Accordion-itemHeader:focus::after {
      right: 0;
}

.spectrum-Accordion-itemHeader:focus::after {
      content: '';

      position: absolute;
      top: calc(-1 * var(--spectrum-accordion-item-border-size, var(--spectrum-alias-border-size-thin)));
      bottom: calc(-1 * var(--spectrum-accordion-item-border-size, var(--spectrum-alias-border-size-thin)));

      width: var(--spectrum-accordion-item-border-size-key-focus, 2px);
    }

.spectrum-Accordion-itemContent {
  padding-top: 0;
  padding-bottom: var(--spectrum-accordion-item-content-padding, var(--spectrum-global-dimension-size-200));
  padding-left: var(--spectrum-accordion-item-content-padding, var(--spectrum-global-dimension-size-200));
  padding-right: var(--spectrum-accordion-item-content-padding, var(--spectrum-global-dimension-size-200));
  display: none;
}

[dir="ltr"] .spectrum-Accordion-item.is-open > .spectrum-Accordion-itemHeading > .spectrum-Accordion-itemIndicator { transform: rotate(90deg); }

[dir="rtl"] .spectrum-Accordion-item.is-open > .spectrum-Accordion-itemHeading > .spectrum-Accordion-itemIndicator { transform: matrix(-1, 0, 0, 1, 0, 0) rotate(90deg); }

[dir="ltr"] .spectrum-Accordion-item.is-open > .spectrum-Accordion-itemIndicator { transform: rotate(90deg); }

[dir="rtl"] .spectrum-Accordion-item.is-open > .spectrum-Accordion-itemIndicator { transform: matrix(-1, 0, 0, 1, 0, 0) rotate(90deg); }

.spectrum-Accordion-item.is-open > .spectrum-Accordion-itemHeader::after {
      height: calc(var(--spectrum-accordion-item-height, 40px) - var(--spectrum-accordion-item-border-size, var(--spectrum-alias-border-size-thin)));
    }

.spectrum-Accordion-item.is-open > .spectrum-Accordion-itemContent {
      display: block;
    }

.spectrum-Accordion-item.is-disabled .spectrum-Accordion-itemHeader {
      cursor: default;
    }

.spectrum-Accordion-item {
  border-color: var(--spectrum-accordion-border-color, var(--spectrum-global-color-gray-300));
}

.spectrum-Accordion-itemIndicator {
  color: var(--spectrum-accordion-icon-color, var(--spectrum-global-color-gray-600));
}

.spectrum-Accordion-itemHeader {
  color: var(--spectrum-accordion-text-color, var(--spectrum-global-color-gray-700));
}

.spectrum-Accordion-itemHeader:hover {
    color: var(--spectrum-accordion-text-color-hover, var(--spectrum-global-color-gray-900));

    background-color: var(--spectrum-accordion-background-color-hover, var(--spectrum-global-color-gray-200));
  }

.spectrum-Accordion-itemHeader:hover + .spectrum-Accordion-itemIndicator {
      color: var(--spectrum-accordion-icon-color-hover, var(--spectrum-global-color-gray-800));
    }

.spectrum-Accordion-itemHeader.focus-ring:after  {
      background-color: var(--spectrum-accordion-border-left-color-key-focus, var(--spectrum-alias-border-color-focus));
    }

.spectrum-Accordion-item.is-open .spectrum-Accordion-itemHeader:hover {
        background-color: transparent;
      }

.spectrum-Accordion-item.is-disabled .spectrum-Accordion-itemHeader,
    .spectrum-Accordion-item.is-disabled .spectrum-Accordion-itemHeader:hover,
    .spectrum-Accordion-item.is-disabled .spectrum-Accordion-itemHeader.focus-ring {
      color: var(--spectrum-accordion-text-color-disabled, var(--spectrum-global-color-gray-500));
      background-color: transparent;
    }

.spectrum-Accordion-item.is-disabled .spectrum-Accordion-itemHeader + .spectrum-Accordion-itemIndicator {
      color: var(--spectrum-accordion-icon-color-disabled, var(--spectrum-global-color-gray-400));
    }
